<?php

require_once("View/View/LoggedInView.php");

class WorkoutUpdateView
{

	private $loggedInView;

	private static $add ="add";
	private static $added = "added";	

	private static $edit = "edit";
	private static $edited = "edited";

	private static $remove = "remove";

	private static $workoutUpdateTitle = "WorkoutUpdateView::newWorkoutUpdateTitle";
	private static $workoutUpdateComment = "WorkoutUpdateView::newWorkoutUpdateComment";



	public function getIfRemove()
	{
		if(isset($_GET[self::$remove]))
		{
			return true;
		}
		return false;
	}

	public function getIdToRemove()
	{
		if(isset($_GET[self::$remove]) && $_GET[self::$remove] != null)
		{
			return $_GET[self::$remove];
		}
		return 0;
	}



	public function getIfAdded()
	{
		if(isset($_GET[self::$added]))
		{
			return true;
		}
		return false;
	}
	private function getIfAdd()
	{
		if(isset($_GET[self::$add]))
		{
			return true;
		}
		return false;
	}





	public function getIfEdit()
	{
		if(isset($_GET[self::$edit]))
		{
			return true;
		}
		return false;
	}
	public function getIfEdited()
	{
		if(isset($_GET[self::$edited]))
		{
			return true;
		}
		return false;
	}
	private function getIdToEdit()
	{
		if(isset($_GET[self::$edit]))
		{
			return $_GET[self::$edit];
		}
		return 0;
	}
	public function getSessionIdToEdit() // DET HÄR VÄRDET SÄTTER VI TYP I DEN FUNKTION SOM SKRIVER UT HTML KOD MED VÄRDENA VI HAR.
	{
		if(isset($_SESSION[self::$edit]) && $_SESSION[self::$edit] != null)
		{
			return $_SESSION[self::$edit];
		}
		return 0;
	}




	public function getWorkoutUpdateTitle()
	{
		if(isset($_GET[self::$workoutUpdateTitle]))
		{
			return $_GET[self::$workoutUpdateTitle];
		}
		return "";
	}
	public function getWorkoutUpdateComment()
	{
		if(isset($_GET[self::$workoutUpdateComment]))
		{
			return $_GET[self::$workoutUpdateComment];
		}
		return "";
	}




	private function getUpdateForm($title = "", $comment = "") //TODO, values, null som default. om de skiljer sig från null så får title o comments values.
	{
		$html = "
		<div id='registerFormDiv' >
			<a href='MyWorkouts.php'>tillbaka</a>
			<form action='?added' method='post' enctype='multipart/form-data'>
				<fieldset> 
					<legend>Lägg till övningar</legend>
					<label for='WorkoutUpdateTitle' >Namn :</label>
					<input type='text' size='40' name='" . self::$workoutUpdateTitle . "' id='WorkoutUpdateTitle' value='$title' />
						
					<label for='WorkoutUpdateComment' >Beskrivning :</label>
					<textarea rows='4' cols='50' name='" . self::$workoutUpdateComment . "' id='WorkoutUpdateComment'>$comment</textarea>

					<input type='submit' name=''  value='Redigera' />
				</fieldset>
			</form>
		</div>";
					// TODO, vi vill kunna välja workout som hör till tränings uppdateringen.
		return $html;
	}




// --------------------------------------------------------------------
	public function __construct()
	{
		$this->loggedInView = new LoggedInView();
	}


	public function getWorkoutUpdatePage()
	{
		$html = $this->getWorkoutUpdatePageHeader();
		$html .= $this->getWorkoutUpdatePageBody();
		$html .= $this->getWorkoutUpdatePageFooter();
		return $html;
	}



	private function getWorkoutUpdatePageHeader()
	{
		$header = $this->loggedInView->getLoggedInHeader();
		return $header;
	}


	private function getWorkoutUpdatePageBody()
	{
		$html = $this->getMenu();

		if($this->getIfAdd())
	  	{
	  		$html .= $this->getUpdateForm();//skickar ej med värden.
	  	}
	  	else if($this->getIfEdit())
	  	{
	  		$html .= $this->getUpdateForm(); //TODO, skicka med 2 värden, dvs.. title och comment, de skall va null som default.
	  	}
	  	else
	  	{
	  		$html .= "<div id='workoutUpdateContainer'>
				  	   <h3>Tränings uppdateringar</h3>
				  	    <li>
							<a href='?'>Ny Uppdatering<a/>
						</li>
				  </div>";

	  		$html .= $this->getAllUpdates();
	  	}
		return $html; 
	}

	private function getAllUpdates()
	{
		return "DET BORDE VÄL RÄCKA UTAN DEN HÄR SIDAN DANIEL/EMIL? tog ju 100år att göra det andra....";
	}


	private function getAllWorkoutsHtml()
	{
		 $html = "HÄR SKALL ALLA WORKOUTS VARA.";
		 return $html;
	}


	private function getMenu()
	{
		$html = $this->loggedInView->getLoggedInMenu();
	    return $html;
	}


	private function getWorkoutUpdatePageFooter()
	{
		$footer = $this->loggedInView->getFooter();
		return $footer;
	}

}


